{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "vKadZFQ2IdJb"
   },
   "source": [
    "# Fine-tuning Granite Vision 3.1 2B with TRL\n",
    "\n",
    "_Authored by: [Eli Schwartz](https://huggingface.co/elischwartz)_\n",
    "\n",
    "Adapted from [Sergio Paniego](https://github.com/sergiopaniego)'s [Notebook](https://huggingface.co/learn/cookbook/en/fine_tuning_smol_vlm_sft_trl)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "JATmSI8mcyW2"
   },
   "source": [
    "This recipe will enable you to fine-tune [IBM's Granite Vision 3.1 2B Model](https://huggingface.co/ibm-granite/granite-vision-3.1-2b-preview).\n",
    "It is a lightweight yet capable model trained by fine-tuning a [Granite language model](https://huggingface.co/ibm-granite/granite-3.1-2b-instruct) with both image and text modalities.\n",
    "We will be using the Hugging Face ecosystem, leveraging the powerful [Transformer Reinforcement Learning library (TRL)](https://huggingface.co/docs/trl/index). This step-by-step guide will enable you to Granite Vision for your specific tasks, even on consumer GPUs.\n",
    "\n",
    "### 🌟 Model & Dataset Overview\n",
    "\n",
    "In this notebook, we will fine-tune and evaluate the **[Granite Vision](https://huggingface.co/ibm-granite/granite-vision-3.1-2b-preview)** model using the **[Geometric Perception](https://huggingface.co/datasets/euclid-multimodal/Geoperception)** dataset, containing tasks that the model wasn't intially trained for. Granite Vision is a highly performant and memory-efficient model, making it an ideal for fine tuning for new tasks. The **Geometric Perception** provides images of various geometric diagrams, compiled from high-school textbooks, paired with question-answer pairs.\n",
    "\n",
    "\n",
    "This notebook is tested using a A100 GPU."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "gSHmDKNFoqjC"
   },
   "source": [
    "## 1. Install Dependencies\n",
    "\n",
    "Let’s start by installing the essential libraries we’ll need for fine-tuning! 🚀\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "GCMhPmFdIGSb"
   },
   "outputs": [],
   "source": [
    "!pip install -q git+https://github.com/huggingface/transformers.git\n",
    "!pip install  -U -q trl datasets bitsandbytes peft accelerate\n",
    "# Tested with transformers==4.49.0.dev0, trl==0.14.0, datasets==3.2.0, bitsandbytes==0.45.2, peft==0.14.0, accelerate==1.3.0"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "x6fAqSnKDtKg",
    "outputId": "bb20c090-9769-4566-a0ef-b11522b4f62d"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "FlashAttention is not installed\n"
     ]
    }
   ],
   "source": [
    "!pip install -q flash-attn --no-build-isolation\n",
    "\n",
    "try:\n",
    "    import flash_attn\n",
    "    print(\"FlashAttention is installed\")\n",
    "    USE_FLASH_ATTENTION = True\n",
    "except ImportError:\n",
    "    print(\"FlashAttention is not installed\")\n",
    "    USE_FLASH_ATTENTION = False"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "g9QXwbJ7ovM5"
   },
   "source": [
    "## 2. Load Dataset 📁\n",
    "\n",
    "We’ll load the **[Geometric Perception](https://huggingface.co/datasets/euclid-multimodal/Geoperception)** dataset, which provides images of various geometric diagrams, compiled from popular high-school textbooks, paired with question-answer pairs."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "LBWqnXkcTN-s"
   },
   "source": [
    "We’ll use the original system prompt used during the model training."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "IBvKAlXhI46X"
   },
   "outputs": [],
   "source": [
    "system_message = \"A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "IQ2zuDeGThNe"
   },
   "source": [
    "For educational purposes, we’ll only train and evaluate on the Line Length Comaprison task, specified in the \"predicate\" field of the dataset."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "QFe_A78aIwK8"
   },
   "outputs": [],
   "source": [
    "from datasets import load_dataset\n",
    "\n",
    "dataset_id = \"euclid-multimodal/Geoperception\"\n",
    "dataset = load_dataset(dataset_id)\n",
    "dataset_LineComparison = dataset['train'].filter(lambda x: x['predicate'] == 'LineComparison')\n",
    "train_test = dataset_LineComparison.train_test_split(test_size=0.5, seed=42)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "I0X4ZajcPV10"
   },
   "source": [
    "Let’s take a look at the dataset structure. It includes an image, a question, an answer, and \"predicate\" which we used to filter the dataset."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "o2UKZj15jGwv",
    "outputId": "6b4ff10f-9ddd-4f22-8254-d2d8ccf41d72"
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "DatasetDict({\n",
       "    train: Dataset({\n",
       "        features: ['id', 'question', 'answer', 'predicate', 'image'],\n",
       "        num_rows: 697\n",
       "    })\n",
       "    test: Dataset({\n",
       "        features: ['id', 'question', 'answer', 'predicate', 'image'],\n",
       "        num_rows: 697\n",
       "    })\n",
       "})"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_test"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "z8UpL5ZxTakm"
   },
   "source": [
    "We’ll format the dataset into a chatbot structure, with the system message, image, user query, and answer for each interaction.\n",
    "\n",
    "💡For more tips on using this model for inference, check out the [Model Card](https://huggingface.co/ibm-granite/granite-vision-3.1-2b-preview)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "XG8NuzqjjbgI"
   },
   "outputs": [],
   "source": [
    "def format_data(sample):\n",
    "    return [\n",
    "        {\n",
    "            \"role\": \"system\",\n",
    "            \"content\": [\n",
    "                {\n",
    "                    \"type\": \"text\",\n",
    "                    \"text\": system_message\n",
    "                }\n",
    "            ],\n",
    "        },\n",
    "        {\n",
    "            \"role\": \"user\",\n",
    "            \"content\": [\n",
    "                {\n",
    "                    \"type\": \"image\",\n",
    "                    \"image\": sample[\"image\"],\n",
    "                },\n",
    "                {\n",
    "                    \"type\": \"text\",\n",
    "                    \"text\": sample['question'],\n",
    "                }\n",
    "            ],\n",
    "        },\n",
    "        {\n",
    "            \"role\": \"assistant\",\n",
    "            \"content\": [\n",
    "                {\n",
    "                    \"type\": \"text\",\n",
    "                    \"text\": sample[\"answer\"]\n",
    "                }\n",
    "            ],\n",
    "        },\n",
    "    ]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "1edUqNGWTtjA"
   },
   "source": [
    "Now, let’s format the data using the chatbot structure. This will set up the interactions for the model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "oSHNqk0dkxii"
   },
   "outputs": [],
   "source": [
    "train_dataset = [format_data(x) for x in train_test['train']]\n",
    "test_dataset = [format_data(x) for x in train_test['test']]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[{'role': 'system',\n",
       "  'content': [{'type': 'text',\n",
       "    'text': \"A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.\"}]},\n",
       " {'role': 'user',\n",
       "  'content': [{'type': 'image',\n",
       "    'image': <PIL.PngImagePlugin.PngImageFile image mode=RGBA size=519x431>},\n",
       "   {'type': 'text', 'text': 'Which line is longer, AC or BA?'}]},\n",
       " {'role': 'assistant', 'content': [{'type': 'text', 'text': 'BA'}]}]"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "train_dataset[200]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "YY1Y_KDtoycB"
   },
   "source": [
    "## 3. Load Model and Check Performance! 🤔\n",
    "\n",
    "Now that we’ve loaded the dataset, it’s time to load the [IBM's Granite Vision Model](https://huggingface.co/ibm-granite/granite-vision-3.1-2b-preview), a 2B parameter Vision Language Model (VLM) built on that offers state-of-the-art (SOTA) performance while being efficient in terms of memory usage.\n",
    "\n",
    "For a broader comparison of state-of-the-art VLMs, explore the [WildVision Arena](https://huggingface.co/spaces/WildVision/vision-arena) and the [OpenVLM Leaderboard](https://huggingface.co/spaces/opencompass/open_vlm_leaderboard), where you can find the best-performing models across various benchmarks.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "PCJhM6tCw4lq"
   },
   "outputs": [],
   "source": [
    "import torch\n",
    "from transformers import AutoModelForVision2Seq, AutoProcessor\n",
    "\n",
    "model_id = \"ibm-granite/granite-vision-3.1-2b-preview\""
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "2HobU2iPUDWL"
   },
   "source": [
    "Next, we’ll load the model and the tokenizer to prepare for inference."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "collapsed": true,
    "id": "awtjIq86JfFF",
    "jupyter": {
     "outputs_hidden": true
    }
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "3c063d29572546a1956d01504803d329",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using a slow image processor as `use_fast` is unset and a slow processor was saved with this model. `use_fast=True` will be the default behavior in v4.48, even if the model was saved with a slow processor. This will result in minor differences in outputs. You'll still be able to use a slow processor with `use_fast=False`.\n"
     ]
    }
   ],
   "source": [
    "model = AutoModelForVision2Seq.from_pretrained(\n",
    "    model_id,\n",
    "    device_map=\"auto\",\n",
    "    torch_dtype=torch.bfloat16,\n",
    "    _attn_implementation=\"flash_attention_2\" if USE_FLASH_ATTENTION else None,\n",
    ")\n",
    "\n",
    "processor = AutoProcessor.from_pretrained(model_id)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "7JtKcuuXUGUT",
    "jupyter": {
     "source_hidden": true
    }
   },
   "source": [
    "To evaluate the model's performance, we’ll use a sample from the dataset. First, let’s inspect the internal structure of this sample to understand how the data is organized."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "i-eIIdL9lqJJ"
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[{'role': 'system',\n",
       "  'content': [{'type': 'text',\n",
       "    'text': \"A chat between a curious user and an artificial intelligence assistant. The assistant gives helpful, detailed, and polite answers to the user's questions.\"}]},\n",
       " {'role': 'user',\n",
       "  'content': [{'type': 'image',\n",
       "    'image': <PIL.PngImagePlugin.PngImageFile image mode=RGBA size=691x412>},\n",
       "   {'type': 'text', 'text': 'Which line is longer, AC or BD?'}]},\n",
       " {'role': 'assistant', 'content': [{'type': 'text', 'text': 'BD'}]}]"
      ]
     },
     "execution_count": 11,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_idx = 20\n",
    "sample = test_dataset[test_idx]\n",
    "sample"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "3IK2HOMuRtY_"
   },
   "source": [
    "Now, let’s take a look at the image corresponding to the sample. Can you answer the query based on the visual information?\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "QavnLzjJUbxf"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAArMAAAGcCAYAAADK9ShlAACxW0lEQVR4Ae39V3RcZ7atCU547z1IkAQN6L0XJVI08j6llFJKpTnmnhq3q8Yd3aNfevRDj37ph+p6qZceVffec08aSWmUypSXKEOKVvTeOxA08N57RM+1AwEEIYCECyDM/DMhBgIR23z/jthzr73WXGEuDmiIgAiIgAiIgAiIgAiIQAASCA/AbdYmi4AIiIAIiIAIiIAIiIBDQGJWB4IIiIAIiIAIiIAIiEDAEpCYDdip04aLgAiIgAiIgAiIgAhIzOoYEAEREAEREAEREAERCFgCErMBO3XacBEQAREQAREQAREQAYlZHQMiIAIiIAIiIAIiIAIBS0BiNmCnThsuAiIgAiIgAiIgAiIgMatjQAREQAREQAREQAREIGAJSMwG7NRpw0VABERABERABERABCRmdQyIgAiIgAiIgAiIgAgELAGJ2YCdOm24CIiACIiACIiACIiAxKyOAREQAREQAREQAREQgYAlIDEbsFOnDRcBERABERABERABEZCY1TEgAiIgAiIgAiIgAiIQsAQkZgN26rThIiACIiACIiACIiACErM6BkRABERABERABERABAKWgMRswE6dNlwEREAEREAEREAEREBiVseACIiACIiACIiACIhAwBKIDNgtH++G9zai9OYdVNS3ods1uJDIlJmYNzsHaQlRg0/qkQiIgAiIgAiIgAiIgF8TCDEx24fG81/jj//jMxy7WY9ur6mJKnoZ/9f/y+t4fFE2QgyKFwU9FAEREAEREAEREIHAIhBauq3jNg7v/hYHDp/CzfoueAVmEdE6DyW1T2GtKxtJYYE1idpaERABERABERABEQhVAiGUM9uLqpPf4rujl3Gv8UEha5PfV1uB8sY2tPaG6qGg/RYBERABERABERCBwCMQMmLW1XwZ+3YfxPniWnT02URFICIiDGH9UVhXZxUqKpvR1u4drw28CdUWi4AIiIAIiIAIiEAoEQgRMduFez9+g70nr6O8pceZ36gZ67F+0QzkeHIK+mpRUd6IVoVmQ+n4176KgAiIgAiIgAgEOIGQELN9tWfw/TdHcOluA7os8BqeimU7X8SuzUuRnRjtnkJXJ6rKq9Dc2v5ALm2Az682XwREQAREQAREQASCmkDwi1lXK67v240DZ2+iut0SYsMQ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",
      "text/plain": [
       "<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=691x412>"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sample[1]['content'][0]['image']"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "gpLfsCUtUW6I"
   },
   "source": [
    "Let’s create a method that takes the model, processor, and sample as inputs to generate the model's answer. This will allow us to streamline the inference process and easily evaluate the VLM's performance."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "_MoRTjFcE8qD"
   },
   "outputs": [],
   "source": [
    "def generate_text_from_sample(model, processor, sample, max_new_tokens=100, device=\"cuda\"):\n",
    "    # Prepare the text input by applying the chat template\n",
    "    text_input = processor.apply_chat_template(\n",
    "        sample[:2],  # Use the sample without the assistant response\n",
    "        add_generation_prompt=True\n",
    "    )\n",
    "\n",
    "    image_inputs = []\n",
    "    image = sample[1]['content'][0]['image']\n",
    "    if image.mode != 'RGB':\n",
    "        image = image.convert('RGB')\n",
    "    image_inputs.append([image])\n",
    "\n",
    "    # Prepare the inputs for the model\n",
    "    model_inputs = processor(\n",
    "        #text=[text_input],\n",
    "        text=text_input,\n",
    "        images=image_inputs,\n",
    "        return_tensors=\"pt\",\n",
    "    ).to(device)  # Move inputs to the specified device\n",
    "\n",
    "    # Generate text with the model\n",
    "    generated_ids = model.generate(**model_inputs, max_new_tokens=max_new_tokens)\n",
    "\n",
    "    # Trim the generated ids to remove the input ids\n",
    "    trimmed_generated_ids = [\n",
    "        out_ids[len(in_ids):] for in_ids, out_ids in zip(model_inputs.input_ids, generated_ids)\n",
    "    ]\n",
    "\n",
    "    # Decode the output text\n",
    "    output_text = processor.batch_decode(\n",
    "        trimmed_generated_ids,\n",
    "        skip_special_tokens=True,\n",
    "        clean_up_tokenization_spaces=False\n",
    "    )\n",
    "\n",
    "    return output_text[0]  # Return the first decoded output text"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 35
    },
    "id": "5UeNiMJC_uCk",
    "outputId": "1e31833c-9484-464f-e6a0-e736b46ada65"
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'The length of line segment AC is not explicitly provided in the given information, so it cannot be determined which line is longer between AC and BD.'"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "output = generate_text_from_sample(model, processor, sample)\n",
    "output"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "ysh0e9DRUfF-"
   },
   "source": [
    "It seems like the model is unable to comapre the lines' lengths which are not explicitly specified. To improve its performance, we can fine-tune the model with more relevant data to ensure it better understands the context and provides more accurate responses."
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "Sw3b76rawti6"
   },
   "source": [
    "**Remove Model and Clean GPU**\n",
    "\n",
    "Before we proceed with training the model in the next section, let's clear the current variables and clean the GPU to free up resources.\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "dxkXZuUkvy8j"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "GPU allocated memory: 0.01 GB\n",
      "GPU reserved memory: 0.02 GB\n"
     ]
    }
   ],
   "source": [
    "import gc\n",
    "import time\n",
    "\n",
    "def clear_memory():\n",
    "    # Delete variables if they exist in the current global scope\n",
    "    if 'inputs' in globals(): del globals()['inputs']\n",
    "    if 'model' in globals(): del globals()['model']\n",
    "    if 'processor' in globals(): del globals()['processor']\n",
    "    if 'trainer' in globals(): del globals()['trainer']\n",
    "    if 'peft_model' in globals(): del globals()['peft_model']\n",
    "    if 'bnb_config' in globals(): del globals()['bnb_config']\n",
    "    time.sleep(2)\n",
    "\n",
    "    # Garbage collection and clearing CUDA memory\n",
    "    gc.collect()\n",
    "    time.sleep(2)\n",
    "    torch.cuda.empty_cache()\n",
    "    torch.cuda.synchronize()\n",
    "    time.sleep(2)\n",
    "    gc.collect()\n",
    "    time.sleep(2)\n",
    "\n",
    "    print(f\"GPU allocated memory: {torch.cuda.memory_allocated() / 1024**3:.2f} GB\")\n",
    "    print(f\"GPU reserved memory: {torch.cuda.memory_reserved() / 1024**3:.2f} GB\")\n",
    "\n",
    "clear_memory()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "YIZOIVEzQqNg"
   },
   "source": [
    "## 4. Fine-Tune the Model using TRL\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "yIrR9gP2z90z"
   },
   "source": [
    "### 4.1 Load the Quantized Model for Training ⚙️\n",
    "\n",
    "Next, we’ll load the quantized model using [bitsandbytes](https://huggingface.co/docs/bitsandbytes/main/en/index). If you want to learn more about quantization, check out [this blog post](https://huggingface.co/blog/merve/quantization) or [this one](https://www.maartengrootendorst.com/blog/quantization/).\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "zm_bJRrXsESg"
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "332bc9732faf47199551056e64772a82",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "from transformers import BitsAndBytesConfig\n",
    "\n",
    "USE_QLORA = True\n",
    "USE_LORA = True\n",
    "\n",
    "if USE_QLORA:\n",
    "    # BitsAndBytesConfig int-4 config\n",
    "    bnb_config = BitsAndBytesConfig(\n",
    "        load_in_4bit=True,\n",
    "        bnb_4bit_use_double_quant=True,\n",
    "        bnb_4bit_quant_type=\"nf4\",\n",
    "        bnb_4bit_compute_dtype=torch.bfloat16,\n",
    "        llm_int8_skip_modules=[\"vision_tower\", \"lm_head\"],  # Skip problematic modules\n",
    "        llm_int8_enable_fp32_cpu_offload=True\n",
    "    )\n",
    "else:\n",
    "    bnb_config = None\n",
    "\n",
    "# Load model and tokenizer\n",
    "model = AutoModelForVision2Seq.from_pretrained(\n",
    "    model_id,\n",
    "    device_map=\"auto\",\n",
    "    torch_dtype=torch.bfloat16,\n",
    "    quantization_config=bnb_config,\n",
    "    _attn_implementation=\"flash_attention_2\" if USE_FLASH_ATTENTION else None,\n",
    ")\n",
    "processor = AutoProcessor.from_pretrained(model_id)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "65wfO29isQlX"
   },
   "source": [
    "### 4.2 Set Up QLoRA and SFTConfig 🚀\n",
    "\n",
    "Next, we’ll configure [QLoRA](https://github.com/artidoro/qlora) for our training setup. QLoRA allows efficient fine-tuning of large models by reducing the memory footprint. Unlike traditional LoRA, which uses low-rank approximation, QLoRA further quantizes the LoRA adapter weights, leading to even lower memory usage and faster training.\n",
    "\n",
    "To boost efficiency, we can also leverage a **paged optimizer** or **8-bit optimizer** during QLoRA implementation. This approach enhances memory efficiency and speeds up computations, making it ideal for optimizing our model without sacrificing performance."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "ITmkRHWCKYjf"
   },
   "outputs": [],
   "source": [
    "if USE_LORA:\n",
    "    from peft import LoraConfig, get_peft_model\n",
    "    \n",
    "    # Configure LoRA\n",
    "    peft_config = LoraConfig(\n",
    "        r=8,\n",
    "        lora_alpha=8,\n",
    "        lora_dropout=0.1,\n",
    "        target_modules=[name for name, _ in model.named_modules() if 'language_model' in name and '_proj' in name],\n",
    "        use_dora=True,\n",
    "        init_lora_weights=\"gaussian\"\n",
    "    )\n",
    "    \n",
    "    # Apply PEFT model adaptation\n",
    "    # model = get_peft_model(model, peft_config)\n",
    "    model.add_adapter(peft_config)\n",
    "    model.enable_adapters()\n",
    "    model = get_peft_model(model, peft_config)\n",
    "    \n",
    "    # Print trainable parameters\n",
    "    model.print_trainable_parameters()\n",
    "    \n",
    "else:\n",
    "    peft_config = None"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "K5zzHM2GVtxD"
   },
   "source": [
    "We will use Supervised Fine-Tuning (SFT) to improve our model's performance on the specific task. To achieve this, we'll define the training arguments with the [SFTConfig](https://huggingface.co/docs/trl/sft_trainer) class from the [TRL library](https://huggingface.co/docs/trl/index). SFT leverages labeled data to help the model generate more accurate responses, adapting it to the task. This approach enhances the model's ability to understand and respond to visual queries more effectively."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "SbqX1pQUKaSM"
   },
   "outputs": [],
   "source": [
    "from trl import SFTConfig\n",
    "\n",
    "# Configure training arguments using SFTConfig\n",
    "training_args = SFTConfig(\n",
    "    output_dir=\"./checkpoints/geoperception\",\n",
    "    num_train_epochs=1,\n",
    "    # max_steps=30,\n",
    "    per_device_train_batch_size=8,\n",
    "    gradient_accumulation_steps=2,\n",
    "    warmup_steps=10,\n",
    "    learning_rate=1e-4,\n",
    "    weight_decay=0.01,\n",
    "    logging_steps=10,\n",
    "    save_strategy=\"steps\",\n",
    "    save_steps=20,\n",
    "    save_total_limit=1,\n",
    "    optim=\"adamw_torch_fused\",\n",
    "    bf16=True,\n",
    "    push_to_hub=False,\n",
    "    report_to=\"none\",\n",
    "    remove_unused_columns=False,\n",
    "    gradient_checkpointing=True,\n",
    "    dataset_text_field=\"\",\n",
    "    dataset_kwargs={\"skip_prepare_dataset\": True},\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "pOUrD9P-y-Kf"
   },
   "source": [
    "### 4.3 Training the Model 🏃"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "ucTUbGURV2_-"
   },
   "source": [
    "To ensure that the data is correctly structured for the model during training, we need to define a collator function. This function will handle the formatting and batching of our dataset inputs, ensuring the data is properly aligned for training.\n",
    "\n",
    "👉 For more details, check out the official [TRL example scripts](https://github.com/huggingface/trl/blob/main/examples/scripts/sft_vlm_smol_vlm.py)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "pAzDovzylQeZ"
   },
   "outputs": [],
   "source": [
    "\n",
    "def collate_fn(examples):\n",
    "    texts = [processor.apply_chat_template(example, tokenize=False) for example in examples]\n",
    "\n",
    "    image_inputs = []\n",
    "    for example in examples:\n",
    "      image = example[1]['content'][0]['image']\n",
    "      if image.mode != 'RGB':\n",
    "          image = image.convert('RGB')\n",
    "      image_inputs.append([image])\n",
    "\n",
    "    batch = processor(text=texts, images=image_inputs, return_tensors=\"pt\", padding=True)\n",
    "\n",
    "    labels = batch[\"input_ids\"].clone()\n",
    "    assistant_tokens = processor.tokenizer(\"<|assistant|>\", return_tensors=\"pt\")['input_ids'][0]\n",
    "    eos_token = processor.tokenizer(\"<|end_of_text|>\", return_tensors=\"pt\")['input_ids'][0]\n",
    "\n",
    "    for i in range(batch[\"input_ids\"].shape[0]):\n",
    "        apply_loss = False\n",
    "        for j in range(batch[\"input_ids\"].shape[1]):\n",
    "            if not apply_loss:\n",
    "                labels[i][j] = -100\n",
    "            if ((j>=len(assistant_tokens)+1) and\n",
    "                torch.all(batch[\"input_ids\"][i][j+1-len(assistant_tokens):j+1]==assistant_tokens)):\n",
    "                apply_loss = True\n",
    "            if batch[\"input_ids\"][i][j]==eos_token:\n",
    "                apply_loss = False\n",
    "\n",
    "    batch[\"labels\"] = labels\n",
    "\n",
    "    return batch"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "skbpTuJlV8qN"
   },
   "source": [
    "Now, we will define the [SFTTrainer](https://huggingface.co/docs/trl/sft_trainer), which is a wrapper around the [transformers.Trainer](https://huggingface.co/docs/transformers/main_classes/trainer) class and inherits its attributes and methods. This class simplifies the fine-tuning process by properly initializing the [PeftModel](https://huggingface.co/docs/peft/v0.6.0/package_reference/peft_model) when a [PeftConfig](https://huggingface.co/docs/peft/v0.6.0/en/package_reference/config#peft.PeftConfig) object is provided. By using `SFTTrainer`, we can efficiently manage the training workflow and ensure a smooth fine-tuning experience for our Vision Language Model.\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "k_jk-U7ULYtA"
   },
   "outputs": [],
   "source": [
    "from trl import SFTTrainer\n",
    "\n",
    "trainer = SFTTrainer(\n",
    "    model=model,\n",
    "    args=training_args,\n",
    "    train_dataset=train_dataset,\n",
    "    data_collator=collate_fn,\n",
    "    peft_config=peft_config,\n",
    "    tokenizer=processor.tokenizer,\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "NlDsh4WvWCx0"
   },
   "source": [
    "Time to Train the Model! 🎉"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "p1rgMTBDLboO"
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "`use_cache=True` is incompatible with gradient checkpointing. Setting `use_cache=False`.\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "\n",
       "    <div>\n",
       "      \n",
       "      <progress value='44' max='44' style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
       "      [44/44 13:38, Epoch 1/1]\n",
       "    </div>\n",
       "    <table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       " <tr style=\"text-align: left;\">\n",
       "      <th>Step</th>\n",
       "      <th>Training Loss</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>10</td>\n",
       "      <td>1.081700</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>20</td>\n",
       "      <td>0.847900</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>30</td>\n",
       "      <td>0.540300</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>40</td>\n",
       "      <td>0.431300</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table><p>"
      ],
      "text/plain": [
       "<IPython.core.display.HTML object>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "text/plain": [
       "TrainOutput(global_step=44, training_loss=0.695373223586516, metrics={'train_runtime': 838.1529, 'train_samples_per_second': 0.832, 'train_steps_per_second': 0.052, 'total_flos': 4.321343420750362e+16, 'train_loss': 0.695373223586516, 'epoch': 1.0})"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "trainer.train()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "w6CykSCtX-Xa"
   },
   "source": [
    "Let's save the results 💾"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "tE8usZw0lgrL"
   },
   "outputs": [],
   "source": [
    "trainer.save_model(training_args.output_dir)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "6yx_sGW42dN3"
   },
   "source": [
    "## 5. Testing the Fine-Tuned Model 🔍\n",
    "\n",
    "Now that our Vision Language Model (VLM) is fine-tuned, it's time to evaluate its performance! In this section, we'll test the model using examples from the ChartQA dataset to assess how accurately it answers questions based on chart images. Let's dive into the results and see how well it performs! 🚀"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "i0KEPu6qYKqn"
   },
   "source": [
    "Let's clean up the GPU memory to ensure optimal performance 🧹"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "Ttx6EK8Uy8t0",
    "outputId": "e671dad3-bddc-4206-dcb9-78a55cc242c0"
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "GPU allocated memory: 0.02 GB\n",
      "GPU reserved memory: 0.19 GB\n"
     ]
    }
   ],
   "source": [
    "clear_memory()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "HwCTPHsfujn2"
   },
   "source": [
    "We will reload the base model using the same pipeline as before."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "EFqTNUud2lA7"
   },
   "outputs": [
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "b20fdd2afe3449f2ab57cc4c9c009f5a",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "Loading checkpoint shards:   0%|          | 0/2 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "model = AutoModelForVision2Seq.from_pretrained(\n",
    "    training_args.output_dir,\n",
    "    device_map=\"auto\",\n",
    "    torch_dtype=torch.bfloat16,\n",
    "    _attn_implementation=\"flash_attention_2\" if USE_FLASH_ATTENTION else None,\n",
    ")\n",
    "\n",
    "processor = AutoProcessor.from_pretrained(model_id)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "lRAPEYKkYSkB"
   },
   "source": [
    "We will merge the LORA adapters in case we are using them."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "mQi2xBXk4sHe"
   },
   "outputs": [],
   "source": [
    "if USE_LORA:\n",
    "    from peft import PeftModel\n",
    "    model = PeftModel.from_pretrained(model, training_args.output_dir)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "swibyq5AWctZ"
   },
   "source": [
    "Let's evaluate the model on an unseen sample.\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/"
    },
    "id": "czZSBgnoef1E",
    "outputId": "515a198d-55d9-4494-8fb7-7193c899b3d3"
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[{'role': 'user',\n",
       "  'content': [{'type': 'image',\n",
       "    'image': <PIL.PngImagePlugin.PngImageFile image mode=RGBA size=691x412>},\n",
       "   {'type': 'text', 'text': 'Which line is longer, AC or BD?'}]},\n",
       " {'role': 'assistant', 'content': [{'type': 'text', 'text': 'BD'}]}]"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "test_idx = 20\n",
    "sample = test_dataset[test_idx]\n",
    "sample[1:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "id": "ATuQ6ZS6eirO"
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAArMAAAGcCAYAAADK9ShlAACxW0lEQVR4Ae39V3RcZ7atCU547z1IkAQN6L0XJVI08j6llFJKpTnmnhq3q8Yd3aNfevRDj37ph+p6qZceVffec08aSWmUypSXKEOKVvTeOxA08N57RM+1AwEEIYCECyDM/DMhBgIR23z/jthzr73WXGEuDmiIgAiIgAiIgAiIgAiIQAASCA/AbdYmi4AIiIAIiIAIiIAIiIBDQGJWB4IIiIAIiIAIiIAIiEDAEpCYDdip04aLgAiIgAiIgAiIgAhIzOoYEAEREAEREAEREAERCFgCErMBO3XacBEQAREQAREQAREQAYlZHQMiIAIiIAIiIAIiIAIBS0BiNmCnThsuAiIgAiIgAiIgAiIgMatjQAREQAREQAREQAREIGAJSMwG7NRpw0VABERABERABERABCRmdQyIgAiIgAiIgAiIgAgELAGJ2YCdOm24CIiACIiACIiACIiAxKyOAREQAREQAREQAREQgYAlIDEbsFOnDRcBERABERABERABEZCY1TEgAiIgAiIgAiIgAiIQsAQkZgN26rThIiACIiACIiACIiACErM6BkRABERABERABERABAKWgMRswE6dNlwEREAEREAEREAEREBiVseACIiACIiACIiACIhAwBKIDNgtH++G9zai9OYdVNS3ods1uJDIlJmYNzsHaQlRg0/qkQiIgAiIgAiIgAiIgF8TCDEx24fG81/jj//jMxy7WY9ur6mJKnoZ/9f/y+t4fFE2QgyKFwU9FAEREAEREAEREIHAIhBauq3jNg7v/hYHDp/CzfoueAVmEdE6DyW1T2GtKxtJYYE1idpaERABERABERABEQhVAiGUM9uLqpPf4rujl3Gv8UEha5PfV1uB8sY2tPaG6qGg/RYBERABERABERCBwCMQMmLW1XwZ+3YfxPniWnT02URFICIiDGH9UVhXZxUqKpvR1u4drw28CdUWi4AIiIAIiIAIiEAoEQgRMduFez9+g70nr6O8pceZ36gZ67F+0QzkeHIK+mpRUd6IVoVmQ+n4176KgAiIgAiIgAgEOIGQELN9tWfw/TdHcOluA7os8BqeimU7X8SuzUuRnRjtnkJXJ6rKq9Dc2v5ALm2Az682XwREQAREQAREQASCmkDwi1lXK67v240DZ2+iut0SYsMQ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",
      "text/plain": [
       "<PIL.PngImagePlugin.PngImageFile image mode=RGBA size=691x412>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sample[1]['content'][0]['image']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {
    "colab": {
     "base_uri": "https://localhost:8080/",
     "height": 36
    },
    "id": "9yHJMKHNWcMc",
    "outputId": "fef11c29-f8ed-4301-9f16-e4b963587988"
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "'BD'"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "output = generate_text_from_sample(model, processor, sample)\n",
    "output"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "id": "NUr6jmnAIlh1"
   },
   "source": [
    "#### 🎉✨ The model has successfully learned to respond to the queries as specified in the dataset. We've achieved our goal! 🎉✨"
   ]
  }
 ],
 "metadata": {
  "accelerator": "GPU",
  "colab": {
   "gpuType": "T4",
   "machine_shape": "hm",
   "provenance": []
  },
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.11"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
